package hcn.protocol.ods.paymentXML;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.List;

/**
 * @Author:FangZhiyi
 * @Description
 * @Data Created in 2020/11/6 17:31
 * @Moddified By:
 */

@XmlRootElement(name = "Data")
public class NotifyPayedXMLResp {
    /*医院ID，医院系统身份标识*/
    private String VisitOrganization;
    /*医院名称*/
    private String VisitOrganizationName;
    /*交易流水号,第三方支付生成*/
    private String AgtOrderNumber;
    /*结算标识,HIS结算标识*/
    private String PaymentNumber;
    /*发票号*/
    private String InvoiceCode;
    /*预结算标识*/
    private String PaymentBudgetNumber;

    private List<InnerFeeRecord> FeeRecordLists;

    @XmlElement(name = "VisitOrganization")
    public String getVisitOrganization() {
        return VisitOrganization;
    }

    public void setVisitOrganization(String visitOrganization) {
        VisitOrganization = visitOrganization;
    }

    @XmlElement(name = "VisitOrganizationName")
    public String getVisitOrganizationName() {
        return VisitOrganizationName;
    }

    public void setVisitOrganizationName(String visitOrganizationName) {
        VisitOrganizationName = visitOrganizationName;
    }

    @XmlElement(name = "AgtOrderNumber")
    public String getAgtOrderNumber() {
        return AgtOrderNumber;
    }

    public void setAgtOrderNumber(String agtOrderNumber) {
        AgtOrderNumber = agtOrderNumber;
    }

    @XmlElement(name = "PaymentNumber")
    public String getPaymentNumber() {
        return PaymentNumber;
    }

    public void setPaymentNumber(String paymentNumber) {
        PaymentNumber = paymentNumber;
    }

    @XmlElement(name = "InvoiceCode")
    public String getInvoiceCode() {
        return InvoiceCode;
    }

    public void setInvoiceCode(String invoiceCode) {
        InvoiceCode = invoiceCode;
    }

    @XmlElement(name = "PaymentBudgetNumber")
    public String getPaymentBudgetNumber() {
        return PaymentBudgetNumber;
    }

    public void setPaymentBudgetNumber(String paymentBudgetNumber) {
        PaymentBudgetNumber = paymentBudgetNumber;
    }

    @XmlElementWrapper(name = "FeeRecordLists")
    @XmlElement(name = "FeeRecordList")
    public List<InnerFeeRecord> getFeeRecordLists() {
        return FeeRecordLists;
    }

    public void setFeeRecordLists(List<InnerFeeRecord> feeRecordLists) {
        FeeRecordLists = feeRecordLists;
    }

    public static class InnerFeeRecord {
        private String FeeNo;
        private String FeeTypeCode;
        private String FeeTypeName;
        private String RequestId;
        private String VisitId;
        private List<InnerDetailsItem> DetailsItemLists;

        @XmlElement(name = "FeeNo")
        public String getFeeNo() {
            return FeeNo;
        }

        public void setFeeNo(String feeNo) {
            FeeNo = feeNo;
        }

        @XmlElement(name = "FeeTypeCode")
        public String getFeeTypeCode() {
            return FeeTypeCode;
        }

        public void setFeeTypeCode(String feeTypeCode) {
            FeeTypeCode = feeTypeCode;
        }

        @XmlElement(name = "FeeTypeName")
        public String getFeeTypeName() {
            return FeeTypeName;
        }

        public void setFeeTypeName(String feeTypeName) {
            FeeTypeName = feeTypeName;
        }

        @XmlElement(name = "RequestId")
        public String getRequestId() {
            return RequestId;
        }

        public void setRequestId(String requestId) {
            RequestId = requestId;
        }

        @XmlElement(name = "VisitId")
        public String getVisitId() {
            return VisitId;
        }

        public void setVisitId(String visitId) {
            VisitId = visitId;
        }


        @XmlElementWrapper(name = "DetailsItemLists")
        @XmlElement(name = "DetailsItemList")
        public List<InnerDetailsItem> getDetailsItemLists() {
            return DetailsItemLists;
        }

        public void setDetailsItemLists(List<InnerDetailsItem> detailsItemLists) {
            DetailsItemLists = detailsItemLists;
        }

        public static class InnerDetailsItem {
            private String CostId;
            private String CostName;
            private String CostNumber;
            private String CostPrice;
            private String TotalCost;

            @XmlElement(name = "CostId")
            public String getCostId() {
                return CostId;
            }

            public void setCostId(String costId) {
                CostId = costId;
            }

            @XmlElement(name = "CostName")
            public String getCostName() {
                return CostName;
            }

            public void setCostName(String costName) {
                CostName = costName;
            }


            @XmlElement(name = "CostNumber")
            public String getCostNumber() {
                return CostNumber;
            }

            public void setCostNumber(String costNumber) {
                CostNumber = costNumber;
            }


            @XmlElement(name = "CostPrice")
            public String getCostPrice() {
                return CostPrice;
            }

            public void setCostPrice(String costPrice) {
                CostPrice = costPrice;
            }


            @XmlElement(name = "TotalCost")
            public String getTotalCost() {
                return TotalCost;
            }

            public void setTotalCost(String totalCost) {
                TotalCost = totalCost;
            }
        }
    }
}
